Termination Proof Script

Consider the TRS R consisting of the rewrite rules
1:    active(f(x))  → mark(x)
2:    top(active(c))  → top(mark(c))
3:    top(mark(x))  → top(check(x))
4:    check(f(x))  → f(check(x))
5:    check(x)  → start(match(f(X),x))
6:    match(f(x),f(y))  → f(match(x,y))
7:    match(X,x)  → proper(x)
8:    proper(c)  → ok(c)
9:    proper(f(x))  → f(proper(x))
10:    f(ok(x))  → ok(f(x))
11:    start(ok(x))  → found(x)
12:    f(found(x))  → found(f(x))
13:    top(found(x))  → top(active(x))
14:    active(f(x))  → f(active(x))
15:    f(mark(x))  → mark(f(x))
There are 20 dependency pairs:
16:    TOP(active(c))  → TOP(mark(c))
17:    TOP(mark(x))  → TOP(check(x))
18:    TOP(mark(x))  → CHECK(x)
19:    CHECK(f(x))  → F(check(x))
20:    CHECK(f(x))  → CHECK(x)
21:    CHECK(x)  → START(match(f(X),x))
22:    CHECK(x)  → MATCH(f(X),x)
23:    CHECK(x)  → F(X)
24:    MATCH(f(x),f(y))  → F(match(x,y))
25:    MATCH(f(x),f(y))  → MATCH(x,y)
26:    MATCH(X,x)  → PROPER(x)
27:    PROPER(f(x))  → F(proper(x))
28:    PROPER(f(x))  → PROPER(x)
29:    F(ok(x))  → F(x)
30:    F(found(x))  → F(x)
31:    TOP(found(x))  → TOP(active(x))
32:    TOP(found(x))  → ACTIVE(x)
33:    ACTIVE(f(x))  → F(active(x))
34:    ACTIVE(f(x))  → ACTIVE(x)
35:    F(mark(x))  → F(x)
The approximated dependency graph contains 6 SCCs: {29,30,35}, {34}, {28}, {25}, {20} and {16,17,31}.
Tyrolean Termination Tool  (2.18 seconds)   ---  May 3, 2006